package br.mikhas.db.serdes;

/**
 * Interface which defines the responsibility to deserialize a model from an
 * array of bytes.
 * 
 * @author Mikhail Domanoski
 * 
 */
public interface Deserializer<T> {
	/**
	 * Deserializes an object from a {@link DeserializationInput}.
	 * 
	 * @param input
	 *            The input which the object bytes will be read
	 * @return The deserialized object
	 */
	public T deserialize(DeserializationInput input);
}
